求两个2^512左右的大素数

来源:百度知道 编辑:UC知道 时间:2024/07/14 07:04:14
本人在写RSA,生成素数的想法就是生成512位的2进制随机数,配合Miller Rabin算法检验,但是无奈长时间运行这两个算法后,程序报错。请大家贴两个2^512左右的素数(或强素数 伪素数),要求经的起Miller Rabin算法50次以上检验。
如果帖上数字后配有程序的,额外加分。
谢谢

29AADDDE36EE420661BBFF16D37FCD9ACE0A462DA66AB047F37C6C134D5BBF19
1A18864E06CF1F90C9A32936CD8D4C623389F9340B4943950750E837D00EA9F5

另外有一个这附近的梅森数是素数,2^521-1

程序在这:http://www.pediy.com/tools/Cryptography/RsaKit/RsaKit_V1.0.rar

算法如下:
/****************************************************************************************
产生随机素数
调用方法:N.GetPrime(bits)
返回值:N被赋值为一个bits位(0x100000000进制长度)的素数
****************************************************************************************/
void CBigInt::GetPrime(int bits)
{
unsigned i;
m_nLength=bits;
begin:
for(i=0;i<m_nLength;i++)m_ulValue[i]=rand()*0x10000+rand();
m_ulValue[0]=m_ulValue[0]|1;
for(i=m_nLength-1;i>0;i--)
{
m_ulValue[i]=m_ulValue[i]<<1;
if(m_ulValue[i-1]&0x80000000)m_ulValue[